package main.java.com.healthy.dao;
import main.java.com.healthy.entity.User;
import java.util.List;

/**
 * 用户数据访问接口
 * 对应功能模块：用户认证与权限管理、个人健康档案管理
 */
public interface UserDAO {

    /**
     * 添加用户
     */
    boolean addUser(User user);

    /**
     * 更新用户信息
     */
    boolean updateUser(User user);

    /**
     * 删除用户
     */
    boolean deleteUser(String userId);

    /**
     * 根据用户ID获取用户
     */
    User getUserById(String userId);

    /**
     * 根据用户名获取用户
     */
    User getUserByUsername(String username);

    /**
     * 获取所有用户
     */
    List<User> getAllUsers();

    /**
     * 检查用户名是否存在
     */
    boolean userExists(String username);

    /**
     * 验证用户密码
     */
    boolean validatePassword(String username, String password);

    /**
     * 更新用户密码
     */
    boolean updatePassword(String userId, String newPassword);
}
